home *** CD-ROM | disk | FTP | other *** search
/ Programming in Microsoft Windows with C# / Programacion en Microsoft Windows con C#.iso / Original Code / Brushes and Pens / HatchBrushArray / HatchBrushArray.cs next >
Encoding:
Text File  |  2001-01-15  |  1.3 KB  |  39 lines

  1. //----------------------------------------------
  2. // HatchBrushArray.cs ⌐ 2001 by Charles Petzold
  3. //----------------------------------------------
  4. using System;
  5. using System.Drawing;
  6. using System.Drawing.Drawing2D;
  7. using System.Windows.Forms;
  8.  
  9. class HatchBrushArray: PrintableForm
  10. {
  11.      const int iSize = 32, iMargin = 8;
  12.      const int iMin = 0, iMax = 52;     // HatchStyle minimum and maximum values
  13.  
  14.      public new static void Main()
  15.      {
  16.           Application.Run(new HatchBrushArray());
  17.      }
  18.      public HatchBrushArray()
  19.      {
  20.           Text = "Hatch Brush Array";
  21.           ClientSize = new Size(8 * iSize + 9 * iMargin, 
  22.                                 7 * iSize + 8 * iMargin);
  23.      }
  24.      protected override void DoPage(Graphics grfx, Color clr, int cx, int cy)
  25.      {
  26.           for (HatchStyle hs = (HatchStyle)iMin; hs <= (HatchStyle)iMax; hs++)
  27.           {
  28.                HatchBrush hbrush = 
  29.                               new HatchBrush(hs, Color.White, Color.Black);
  30.                int y = (int)hs / 8;
  31.                int x = (int)hs % 8;
  32.  
  33.                grfx.FillRectangle(hbrush, iMargin + x * (iMargin + iSize), 
  34.                                           iMargin + y * (iMargin + iSize), 
  35.                                           iSize, iSize);
  36.           }
  37.      }
  38. }
  39.